package cl.loso.melon.server.action;

import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import cl.loso.melon.server.model.CargoLVS;
import cl.loso.melon.server.persistencia.CargoLVSDAO;
import com.opensymphony.xwork2.ActionSupport;

public class CargoLVSAction {
	private static Log log = LogFactory.getLog(CargoLVSAction.class);
	private List<CargoLVS> cargoList;
	private String nombre;
	private String id;
	private CargoLVS cargoLVS;
	private boolean existeCargo;
	
	public String guardarCargo() {
		try {
			if (CargoLVSDAO.buscarNombre(nombre).isEmpty()) {			
				CargoLVSDAO.insertar(new CargoLVS(nombre));
				existeCargo = false;
			} else {
				existeCargo = true;
			}
		} catch (Exception e) {
			log.error(e);
		}

		return ActionSupport.SUCCESS;
	}

	public String actualizarCargo() {
		try {

			CargoLVSDAO.actualizar(Long.parseLong(id), nombre);

		} catch (Exception e) {
			log.error(e);
		}

		return ActionSupport.SUCCESS;
	}

	public String obtenerCargo() {
		try {
			cargoList = CargoLVSDAO.obtener();
		} catch (Exception e) {
			log.error(e);
		}
		return ActionSupport.SUCCESS;
	}

	public String borrarCargo() {
		try {
			CargoLVSDAO.borrar(Long.parseLong(id));
		} catch (Exception e) {
			log.error(e);
		}
		return ActionSupport.SUCCESS;
	}

	public String editarCargo() {
		try {
			cargoLVS = CargoLVSDAO.getCargobyId(Long.parseLong(id));
		} catch (Exception e) {
			log.error(e);
		}
		return ActionSupport.SUCCESS;
	}

	public List<CargoLVS> getCargoList() {
		return cargoList;
	}

	public void setCargoList(List<CargoLVS> cargoList) {
		this.cargoList = cargoList;
	}

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public CargoLVS getCargoLVS() {
		return cargoLVS;
	}

	public void setCargoLVS(CargoLVS cargoLVS) {
		this.cargoLVS = cargoLVS;
	}

	public boolean isExisteCargo() {
		return existeCargo;
	}

	public void setExisteCargo(boolean existeCargo) {
		this.existeCargo = existeCargo;
	}
}
